<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>


    <script>


        // 算上个月显示的天数
        //    观察日历的特点    上个月显示的第一天=上个月的最后一天-week+2

        function f1() {
            var arr = [];

            // 求week   本月的第一天
            var date = new Date();
            // 日期设置到本月的第一天
            date.setDate(1);  // 2022.7.1
            // 求星期
            var week = date.getDay();

            // 上个月的最后一天   --- 本月的第0天
            date.setDate(0);  // 2022.6.30
            var maxDay = date.getDate();   // 30


            for (var i = maxDay - week + 2; i <= maxDay; i++) {
                arr.push(i);
            }

            // console.log(arr);
            return arr
        }




        function f2() {
            var date = new Date() ;
            // 下个月的第0天
            date.setDate(32) ;   // 2022.8.1

            date.setDate(0) ;  // 2022.7.31

            var maxDay = date.getDate() ;

            var arr = [] ;
            for (var i = 1 ; i <= maxDay; i++) {
                arr.push(i);
            }

            // console.log(arr);
            return arr
        }


        function f3() {
            var arr1 = f1() ;
            var arr2 = f2() ;   // 本月
            var arr = [] ;
            for(var i = 1 ; i <= 42 - arr1.length - arr2.length ; i++) {
                arr.push(i) ;
            }
            // console.log(arr);
            return arr
        }




        
        

    </script>

</body>

</html>